home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
The X-Philes (2nd Revision)
/
The X-Philes Number 1 (1995).iso
/
xphiles
/
hp48hor1
/
piper.doc
< prev
next >
Wrap
Text File
|
1995-03-31
|
10KB
|
210 lines
(Comp.sys.handhelds)
Item: 3238 by vapsppr at prism.gatech.EDU
Author: [Paul Raines]
Subj: H. Piper! ver 1.2 (all decimal score!)
[NOTE! It's Piper ver 2.0 on the disk; see additional note below. -jkh-]
Date: Thu May 23 1991
[Note: Reqires SCHIP, on this disk. -jkh-]
Version 1.2 of H. Piper! for SUPER-CHIP follows below.
The following changes were made.
-- The [ENTER] key will now work to restart the game as if it was just run for
the first time.
-- I have worked out a way to show the total score in its full decimal glory.
It is tricky and gobbles up two registers, but seems to work.
-- The bonus for using the whole grid is now 100 points on top of what was
earned normally.
-- The movement keys can now be held down to move the crosshair long distances.
-- Corner pieces are guaranteed for the first four pipes to get out of sticky
situations with the starting pipe placement.
Checksum for the unASCed program is
# 493Eh
1677.5
DISCLAIMER: Since CHIP makes use of undocumented features of the HP48SX,
anything happen: loss of data, meltdown, etc. Therefore, I take no
responsibility for any damage whatsoever that occurs.
**************** H. Piper! **********************
OBJECT:
-------
You are presented with a 6 row, 10 column grid and a preview panel of 5 pipes.
A starting pipe will be placed on the grid and will in a few seconds start
leaking. The object is to lay pipes on the grid to contain the leak as long as
you can. If the water flows onto an empty grid site, onto the side of another
pipe or border, that plumbing job is finished. If you did well enough, you may
get another job. Otherwise the game is over.
HOW TO PLAY:
------------
On the bottom and right borders of the grid are grid pointers. The bottom
pointer can be moved left with the (1) key and right with the (2) key. The
side pointer can be moved up with the (9) key and down with the (6) key.
(Note: this is identical to the movement keys for Syzygy by Roy Trevino [on
EduCALC Goodies Disk #2 -jkh-]). A crosshair is present on the grid sites the
two paddles point to.
Using the pointers, chose a grid site to place a pipe. The pipe to be placed
is the one at the bottom of the preview column. Once a site is chosen, press
the (7) key to place the pipe there. You can replace a pipe already at the
grid site with a penalty of one point. You cannot replace a pipe that the
water has already flown through. Trying to do this will make you lose the pipe
you were trying to place and also penalize you one point.
When you have placed all the pipe you wish to for a particular job, you can
press the (+) key to make the water flow *FAST*. You can still lay pipe if you
realize you made a mistake, but hurry!
KEY SUMMARY: Left (1)
Right (2)
Up (9)
Down (6)
Place (7)
Fast (+)
Once a job is over, press (SPACE) to continue.
There are ten levels with increasing water flow speed. Level 10's speed is the
same as that for *FAST*. If you manage to get through level 10, it repeats at
that level till you fail. The starting speed with which the flow comes out of
the initial pipe is slower than the usual flow, however this speed increases in
level also.
SCORING:
--------
You receive 3 points for every pipe the water flows through. For the crossed
pipes, flowing through them in both directions gives you 6 points. (Note: some
adventuresome combinatorist might want to figure out what the maximum possible
score is. If it is over 255, there could be a problem, but I doubt it.) You
are penalized 1 point for replacing or trying to replace a pipe already on the
grid.
The current job score is shown in upper right corner. The score can not go
negative, so if the score is zero, you can replace pipes without penalty.
Once a job is over, the program checks to see if every grid site was flowed
through. If so you earn a 100 point bonus. The score earned is added to the
grand total and displayed on the screen shown after (SPACE) is pressed.
If the game is over, the word OVER will be displayed above the score and the
(SPACE) key can be pressed to exit. The total score will be written to user
flags so that the user lang program SCORE can put the score on the stack.
[Note: See SCORE and SCORE.DOC on this disk. -jkh-] If OVER does not appear,
press (SPACE) to go on to the next job. The points needed to go to the next
job are obtained by the following formula:
Points needed = 100 - (41 - 4 * level)
therefore, you need 63 points to go to job 2
67 points to go to job 3
...
99 points to go to job 11,12,....
The points needed for a level are shown below the bottom right corner of a
grid. Note that this does not mean that play ends once that score is achieved.
That score is only a minimum needed to have the opportunity to continue on
another job.
DEVELOPMENT NOTES:
-----------------
Pipe Graphics -- As you will probably notice, a lack of color is a big problem
in trying to sort out what you have laid out. Having 8x8 pipe
bitmaps was a cornerstone of my design so enlarging them for
better resolution would be difficult and probably restrict the
grid size unduly.
Randomness -- Just how random is S-CHIP's random generator? You will probably
notice that the cross pipe comes up more often than the others.
True. It is twice as likely to be chosen than any of the others.
Another design fluke. However, being the one true symmetrical
piece, it will be the most useful to get often. [Note: changed
in version 2.0, see below. -jkh-]
H. Piper! was written using the excellent compiler Chipper. I will make the
source available if there is any interest. Be forewarned. I am a pretty
sloppy coder. There is much room for improvement in efficiency.
ACKNOWLEDGEMENTS:
----------------
CHIP-48 is (C) Copyright 1990 Andreas Gustafsson.
- Many, many thanks to the one who started it all.
Chipper is (C) Copyright 1990 Christian Egeberg.
- It is amazing that with such a great compiler
as this, there are so few CHIP games out there.
SUPER-CHIP is (C) Copyright 1991 Erik Bryntse
- Never be satisfied with limitation.
ASC-> is written by William C Wickes.
Happy plumbing!
--------------------
(Comp.sys.handhelds)
Item: 3268 by vapsppr at prism.gatech.EDU
Author: [Paul Raines]
Subj: H. Piper! ver 2.0 (CURVED CORNERS & RESUME GAME)
Date: Fri May 24 1991
Below are both the ASC and UUE versions of H.Piper! 2.0
Changes: - CURVED CORNERS!!!
- resume game ability!
- most randomness removed
RESUME: Between jobs (i.e. while at the dripping faucet wait screen) you can
press the decimal (.) key to leave the game and go to the regular
calculator mode. The total score and level you achieved will be stored
in the user flags so that next time you start the game, you will resume
the game as you left it. Do not run the SCORE program or you will lose
the resumable state. [See SCORE.DOC on this disk. -jkh-]
RANDOM: The starting pipe for the first level is still placed randomly. For
subsequent levels, however, the starting pipe is located on the grid
site you "leaked" on with the starting direction opposite of that you
entered. If you leaked onto the border, then the starting pipe is
placed on the site you leaked from. The first five pipes in the queue
are selected randomly. Placing a pipe on the grid with the (7) key
will still randomly select a new pipe to put at the top of the queue.
If you press (4) to place a pipe, the pipe at the top of the queue will
be the one currently displayed between the score and level indicators.
General Notes: Some people have reported assorted problems with getting the
program to work. For those who can't get SCHIP to work with H. Piper,
try turning off all alarms and date/clock displays. If any of you have
Chipper, you might try compiling the v1.2 source code I posted and see
if you can get it to run from there. I am really sorry for all these
problems, but I am at a loss to help right now.
Development Notes: It is really funny how work involved on each aspect of this
last update was inversely proportional to what I expected. The rounded
corners were much, much easier to implement than I thought. It does
increase the code size by a hefty chunk, but it took little work. The
derandomization of the starting pipe was an absolute b:tch. I had to
extensively recode several procedures and add some complex testing just
to make sure you didn't end up having a starting pipe going into a
border.
Program Size: I have put a semi-rigid limit of 2K on the size of the program.
Any improvement that will put it over that barrier just won't be worth
it. (I will of course probably eat these words later.)
Everyone please keep me informed on your success in getting this version to
run. Also, any comments and suggestions are welcome.
Thats it. Enjoy!
Paul
--
Paul Raines
Georgia Institute of Technology, Atlanta Georgia, 30332
uucp: ...!{decvax,hplabs,ncar,purdue,rutgers}!gatech!prism!vapsppr
Internet: vapsppr@prism.gatech.edu